Today's Question:  What does your personal desk look like?        GIVE A SHOUT

SEARCH KEYWORD -- Directly memory access



  A Sip of Go Log

Logging is indispensable in any code that we need its support both in debugging and in statistics. However, a package that filled withfmt.Println/fmt.Printf printing various messages can never be considered a read-to-be-adopted package, which can be optimized by a simple change, using Golang’s native log package to print information to standard output or to a file. Then, how to apply the log package? Are there any limitations? If so, can we seek open-source packages? Let&rsq...

   GOLANG,LOGGING     2022-06-16 05:43:24

  Time-saving tips Linux users should know

As a programmer or system administrator, we have more chances of working on *nix platforms. It's tough experience when first start use *nix as we need to face a black screen without knowing what's behind it. Now, if we can have some resources to rely on, then we will find the beautify of *nix. They are fast, efficient and most importantly sexy. Below are some great tips for helping Linux users get used to Linux. This list is a bit long. So be patient. To get more information on a command mention...

   Linux,Tips     2013-09-03 22:30:48

  String intern in Java

In Java, == is used to compare whether two objects have the same memory location, equals() is usually used to compare whether two objects have the same time and the same state.  When comparing two strings, normally we just want to know whether they have same content, so we can choose equals(). But since String comparison is so frequently needed, Java has worked on the String class to make == workable when comparing two String literals. The String class maintains a pool of emp...

   JAVA,STRING     2016-04-10 03:35:25

  Restore mocked variables in GoLang unit test

One of the guarding principles of writing unit test is that there should be no real external calls for dependant services. Unit test should run by its own and can run without issues on any environment including local, build, test environment. This indicates there should be some mock responses whenever an external call is needed so that different unit test scenarios can be covered. How can this be done in GoLang? In GoLang, anything can be assigned to a variable even including functions. A variab...

   GOLANG,UNIT TEST,MOCK FUNCTION,RESTORE MOCK     2021-12-10 20:43:00

  Understand GoLang WaitGroup internals and how it works

Background Before getting into the main content, let me give a brief introduction to WaitGroup and its related background knowledge. Here, the focus is on the basic usage of WaitGroup and the fundamental knowledge of system semaphores. For those who are familiar with these, you can skip this section directly. WaitGroup WaitGroup is one of the most common concurrency control techniques in Golang, and its function can be roughly compared to the join() in concurrency control of other languages' mul...

   GOLANG,WAITGROUP,SOURCE CODE     2023-04-26 08:02:01

  The Book That Every Programmer Should Read

No, it’s not Knuth’s “The Art of Programming”. I’m talking about quite an easy-to-read (compared to TAoP) book, which, in fact, does not require any engineering or mathematical background from the reader.I am talking about C. Petzold’s “CODE”. It is a truly remarkable book about how computers work. Let me explain why I think this book is so awesome.The book starts from the very beginning, from explaining what code is, bringi...

   Programmer,Book,Must read,CODE,C. Petzold     2011-10-31 10:43:58

  When will resizing be triggered in Java HashMap?

HashMap is one of the most frequently used collection types in Java, it stores key-value pairs. Ideally it expects to use hash table which expects the data access time complexity to be O(1), however, due to hash conflicts, in reality, it uses linked list or red-black tree to store data which makes the worst case time complexity to be O(logn).  Although collections are using data structures like arrays and linked lists, unlike arrays, they will dynamically resize when there is not enough spa...

   JAVA,RESIZE,HASHMAP,THRESHOLD     2020-05-02 20:41:19

  Flash, HTML5 comparison finds neither has performance advantage

A comparison of streaming video via the Adobe Flash and HTML5 formats with numerous different browsers on both Mac and Windows produced wildly different results based on the operating system and browser, making neither a clear winner. The test, from Streaming Learning Center, was conducted in response to recent comments alleged to have been said by Apple co-founder Steve Jobs, in which he reportedly called Flash a "CPU hog." While the test found that HTML5 is significantly more efficient th...

   html5,flash,performance,comparison     2011-07-01 10:08:00

  Top 5 Reasons Not to Use Hadoop for Analytics

As a former diehard fan of Hadoop, I LOVED the fact that you can work on up to Petabytes of data.  I loved the ability to scale to thousands of nodes to process a large computation job.  I loved the ability to store and load data in a very flexible format.  In many ways, I loved Hadoop, until I tried to deploy it for analytics.   That’s when I became disillusioned with Hadoop (it just "ain't all that"). At Quantivo, we’ve explored many ways to deploy H...

   Cloud computing,Hadoop,Analytics     2012-04-17 13:43:26

  A journey to investigate a goroutine leakage case

In Go, creating goroutines is straightforward, but improper usage may result in a large number of goroutines unable to terminate, leading to resource leakage and memory leaks over time. The key to avoiding goroutine leaks is to manage the lifecycle of goroutines properly. By exporting runtime metrics and utilizing pprof, one can detect and resolve goroutine leakage issues. This post will go through one real case encountered by the author. The author maintains a service that connects to a targe...

   TIMEOUT,SSH,GUIDE,DEBUG,LEAK,GOROUTINE,PPROF,GOLANG     2024-03-16 11:00:23